package cn.edu.sdjzu.knoverse.model.entity.kg;

import com.alibaba.fastjson2.annotation.JSONField;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springframework.data.neo4j.core.schema.Id;
import org.springframework.data.neo4j.core.schema.Node;
import org.springframework.data.neo4j.core.schema.Property;

@Data
@EqualsAndHashCode
@Node(primaryLabel = "File")
/**
 * 代理节点，指向关系数据库中的文件表的一条记录
 * 创建删除文件时应该同时操作关系数据库和图数据库
 */
public class FileNode {
    /**
     * 防止冲突，使用单独的id
     */
    @Id
    @Property("fileId")
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    @JSONField(serializeUsing = ToStringSerializer.class)
    private Long fileId;

} 